% 对数变换。
img=imread("rice.png");
subplot(3,3,1),imshow(img),ylabel('原始图像');
subplot(3,3,2),imhist(img);

%对数变换
c=255/log(1+255);
x=0:1:255;
y=c*log(1+x);
subplot(3,3,6),plot(x,y),axis tight,xlabel("f"),ylabel("g");
%绘制变换曲线
[m,n]=size(img);
K=double(img);

g=c*log(K+1);

%等价循环语句
% for i=1:m
%     for j=1:n
%         g(i,j)=0;
%         g(i,j)=c*log(K(i,j)+1);
%     end
% end

subplot(3,3,4),imshow(uint8(g)),ylabel('对数变换');
subplot(3,3,5),imhist(uint8(g));

%系统函数调用
ju=imadjust(img,[],[],0.216);
subplot(3,3,7),imshow(ju),ylabel("对数变换(系统调用)");
subplot(3,3,8),imhist(img);






